Add a function to list the builtin paper sizes. (#382355, Christian
authorMatthias Clasen <mclasen@redhat.com>
Sun, 29 Apr 2007 04:50:28 +0000 (04:50 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Sun, 29 Apr 2007 04:50:28 +0000 (04:50 +0000)
2007-04-29  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtk.symbols:
        * gtk/gtkpapersize.[hc]: Add a function to list the
        builtin paper sizes.  (#382355, Christian Persch)

svn path=/trunk/; revision=17691

ChangeLog
docs/reference/ChangeLog
docs/reference/gtk/gtk-sections.txt
gtk/gtk.symbols
gtk/gtkpapersize.c
gtk/gtkpapersize.h

index 40fdf4d3328fc55b40b03271c69c7487daa30922..13ee3196e80697c182c7eac30782a88ad017e29a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2007-04-29  Matthias Clasen  <mclasen@redhat.com>
+
+       * gtk/gtk.symbols:
+       * gtk/gtkpapersize.[hc]: Add a function to list the
+       builtin paper sizes.  (#382355, Christian Persch)
+
 2007-04-29  Matthias Clasen  <mclasen@redhat.com>
 
        * gtk/gtk.symbols:
index 3d0d4beafe70e7648d0eec4479d3317985b60609..d6e37db5f8c4d0a4848c332900b8244924d1e010 100644 (file)
@@ -1,3 +1,7 @@
+2007-04-29  Matthias Clasen  <mclasen@redhat.com>
+
+       * gtk/gtk-sections.txt: Add gtk_paper_size_get_builtins
+
 2007-04-29  Matthias Clasen  <mclasen@redhat.com>
 
        * gtk/gtk-sections.txt: Add gtk_printer_{has,request}_details
index 8727f81f23155ee91a00120dc9a0f61a9f3db1de..24ecc7437a16b2d9acc8fd0a81e29002f44dc4ff 100644 (file)
@@ -6361,6 +6361,7 @@ gtk_paper_size_new_custom
 gtk_paper_size_copy
 gtk_paper_size_free
 gtk_paper_size_is_equal
+gtk_paper_size_get_builtins
 gtk_paper_size_get_name
 gtk_paper_size_get_display_name
 gtk_paper_size_get_ppd_name
index cc602ac5f1171637592ea7386a61a5801150480c..ada3a398d16c526aa096e41a53637d62c38a466c 100644 (file)
@@ -2555,6 +2555,7 @@ gtk_paper_size_new_custom
 gtk_paper_size_copy
 gtk_paper_size_free
 gtk_paper_size_is_equal
+gtk_paper_size_get_builtins
 gtk_paper_size_get_name
 gtk_paper_size_get_display_name
 gtk_paper_size_get_ppd_name
index 00292df917f0527505d18a6dbab85ad9cb367dec..be21faf68eb2adf16226f2d7791c779cacad6bbd 100644 (file)
@@ -430,6 +430,33 @@ gtk_paper_size_is_equal (GtkPaperSize *size1,
                 gtk_paper_size_get_name (size2)) == 0;
 }
 
+/**
+ * gtk_paper_size_get_builtins:
+ *
+ * Creates a list of builtin paper sizes.
+ * 
+ * Return value: a newly allocated list of newly 
+ *    allocated #GtkPaperSize objects
+ *
+ * Since: 2.12
+ */
+GList *
+gtk_paper_size_get_builtins (void)
+{
+  GList *list = NULL;
+  guint i;
+
+  for (i = 0; i < G_N_ELEMENTS (standard_names_offsets); ++i)
+    {
+       GtkPaperSize *size;
+
+       size = gtk_paper_size_new_from_info (&standard_names_offsets[i]);
+       list = g_list_prepend (list, size);
+    }
+
+  return list;
+}
+
 /**
  * gtk_paper_size_get_name:
  * @size: a #GtkPaperSize object
index 679915cdab0190b65c365f6d936ee7812030c5dc..8709cdf2f42a335146cb507e67ca7db4805f2c22 100644 (file)
@@ -56,6 +56,7 @@ void          gtk_paper_size_free         (GtkPaperSize *size);
 gboolean      gtk_paper_size_is_equal     (GtkPaperSize *size1,
                                           GtkPaperSize *size2);
 
+GList        *gtk_paper_size_get_builtins (void);
 
 /* The width is always the shortest side, measure in mm */
 G_CONST_RETURN gchar *gtk_paper_size_get_name         (GtkPaperSize *size);